import plugin from '../../../lib/plugins/plugin.js';
import fetch from 'node-fetch';  
  
export class LyricQuery extends plugin { // 更新类名以反映其功能  
  constructor() {  
    super({  
      name: '歌词查询',  
      dsc: '提供歌词查询服务',  
      event: 'message',  
      priority: 5000,  
      rule: [  
        {  
          reg: /^#(.*)(歌词查询)(.*)/, // 更新正则表达式以匹配“歌词查询”  
          fnc: 'music'  
        },  
      ]  
    });  
  }  
  
  async music(e) {  
    let msg = e.msg;  
    let query = msg.replace(/#|歌词查询/g, "").trim(); // 更新替换文本以匹配“歌词查询”  
    let url = `https://api.52vmy.cn/api/music/lrc?msg=${encodeURIComponent(query)}&n=1`; // 对查询参数进行编码  
  
    try {  
      let res = await fetch(url);  
  
      // 检查响应状态是否成功（200-299）  
      if (!res.ok) {  
        throw new Error(`HTTP error! Status: ${res.status}`);  
      }  
  
      let text = await res.text(); // 获取响应文本  
      await this.reply(text); // 发送响应文本作为回复  
    } catch (err) {  
      // 请求失败时记录错误并发送错误消息  
      logger.error('[歌词查询] 接口请求失败:', err); // 确保logger已定义或导入  
      await this.reply('歌词查询接口请求失败，请联系管理员检查接口');  
    }  
  }  
}
